#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.9.24'

pipeline {
  agent { label 'linux' }

  environment {
    LANG     = 'en_US.UTF-8'
    LANGUAGE = 'en_US.UTF-8'
    LC_ALL   = 'en_US.UTF-8'
    PLATFORM = 'ios'
    FASTLANE_DISABLE_COLORS = 1
    /* avoid writing to r/o /nix */
    GEM_HOME  = '~/.rubygems'
  }

  options {
    timestamps()
    /* Disable concurrent jobs */
    disableConcurrentBuilds()
    /* Prevent Jenkins jobs from running forever */
    timeout(time: 5, unit: 'MINUTES')
    /* Don't keep more than 50 builds */
    buildDiscarder(logRotator(numToKeepStr: '50'))
  }

  stages {
    stage('Prep') {
      steps { script {
        nix.shell(
          'bundle install --gemfile=fastlane/Gemfile',
          attr: 'shells.fastlane',
        )
      } }
    }
    stage('Play Store Update'){
      steps { script {
        withCredentials([
          string(
            credentialsId: 'google-play-api-key-json',
            variable: 'GOOGLE_PLAY_JSON_KEY'
          ),
        ]) {
          nix.shell(
            'bundle exec --gemfile=fastlane/Gemfile fastlane android upload_metadata',
            keepEnv: ['FASTLANE_DISABLE_COLORS', 'GOOGLE_PLAY_JSON_KEY'],
            attr: 'shells.fastlane',
            pure: false
          )
        }
      } }
    }
  }
}
